﻿@model SiteCredivale.ViewModels.solicitacaoViewModel
@using Domain.Entidades 

@{

    Layout = "~/Areas/Intranet/Views/Shared/_Layout2.cshtml";

}


<div id="topico" class="topico">Solicitação multifuncionais</div>
<div class="box_medio">
    @using (Html.BeginForm(null, null, FormMethod.Post, new { @id = "forms" }))
    {
        @Html.AntiForgeryToken()



        @Html.ValidationSummary(true, "", new { @class = "text-danger" })

        @Html.HiddenFor(model => model.sol_codigo)
    


        <div class="editor-field">
            <label class="txtLabel">
                Data/Hora:
            </label> 
            @Html.EditorFor(model => model.data_horario, new { htmlAttributes = new { @readonly = "readonly"} })
        </div>


        <div class="editor-field">
            <label class="txtLabel">
                Tipo solicitação:
            </label>
            @Html.DropDownList("sol_tipo")
            @Html.ValidationMessageFor(model => model.sol_tipo)
        </div>


        <div class="editor-field">
            <label class="txtLabel">
                Unidade - Setor:
            </label>
@if (ViewBag.flag_todos == 1)
{
@Html.DropDownList("unidade")
}
else
{
    @Html.DropDownList("unidade", null, new { @disabled = false })
}
        -
            <select id="setor" name="setor"></select> 
        </div>
      
        <div class="editor-field">
            <label class="txtLabel">
                Impressora:
            </label>

            <select id="sol_impressora" name="sol_impressora"></select>

            @Html.ValidationMessageFor(model => model.sol_impressora)
        </div>




        <div class="editor-field">
            <label class="txtLabel">
                Nº série:
            </label> <input id="ns_serie" type="Text" readonly="true" />
        </div>



        <div class="editor-field">
            <label id="tipo" class="txtLabel">
            </label>
            <span id="desc"></span>
            
            @Html.ValidationMessageFor(model => model.sol_descricao)
        </div>


        <br /><input id="Salvar" type="submit" value="Salvar" class="btn" />

    }



</div>

@if (ViewBag.res != null)
{


    @Html.Raw("<script type='text/javascript'>successAlert('Sucesso', '" + ViewBag.res + "');</script>")


}
@if (ViewBag.err != null)
{


    @Html.Raw("<script type='text/javascript'>errorAlert('Atenção', '" + ViewBag.err + "');</script>")


}

<script>

    $().ready(function () {
        carrega_setor();
        verifica_tipo();
        carrega_impressora();

        $("#sol_descricao").bind('keydown', soNums);

        $("#sol_tipo").bind("change", function () {
            verifica_tipo();
        });

        $("#unidade").bind("change", function () {
            carrega_setor();
           
        });

        $("#setor").bind("change", function () {
            carrega_impressora();
        });


        $("#sol_impressora").bind("change", function () {
            carrega_ns();
        });

    });

    function verifica_tipo()
    {
        $("#tipo").empty();
        $("#desc").empty();
        if ($("#sol_tipo").val() == 1) {

            
            $("#desc").append('<input class="txt_numeros" id="sol_descricao" name="sol_descricao" type="Text" maxlength="5">');
            $("#sol_descricao").val("1");
            $("#tipo").append("Quantidade");
        }
        else {

            $("#desc").append('<textarea cols="20" id="sol_descricao" name="sol_descricao" rows="2" maxlength="150" ></textarea>');
            $("#tipo").append("Descrição");
        }
    }


   
    function carrega_impressora()
    {
        $("#sol_impressora").empty();
        $.getJSON("GetImpressora", { unidade: $("#unidade").val(), setor: $("#setor").val()
        }, function (result) {
            data = $.parseJSON(result);

            if (data.length == 0) {
                $("#sol_impressora").append("<option value=-1>Nenhuma</option>");

            }

            else {
                for (var i = 0; i < data.length; i++) {
                    var item = data[i];
                    $("#sol_impressora").append("<option value=" + item.id + ">" + item.desc + "</option>");

                }

            }
            carrega_ns();});



    }


    function carrega_ns() {
        $("#ns_serie").val(" ");
       
        $.getJSON("GetNS", {
            impressora: $("#sol_impressora").val()
        }, function (result) {
            data = $.parseJSON(result);

            for (var i = 0; i < data.length; i++) {
                var item = data[i];
                $("#ns_serie").val(item.desc);
              
            }


        });
    }

    function soNums(e) {

        if ($("#sol_tipo").val() == 1) {
            //teclas adicionais permitidas (tab,delete,backspace,setas direita e esquerda)
            keyCodesPermitidos = new Array(8, 9, 37, 39, 46);

            //numeros e 0 a 9 do teclado alfanumerico
            for (x = 48; x <= 57; x++) {
                keyCodesPermitidos.push(x);
            }

            //numeros e 0 a 9 do teclado numerico
            for (x = 96; x <= 105; x++) {
                keyCodesPermitidos.push(x);
            }

            //Pega a tecla digitada
            keyCode = e.which;

            //Verifica se a tecla digitada é permitida
            if ($.inArray(keyCode, keyCodesPermitidos) != -1) {
                return true;
            }
            return false;
        }

    }
    function carrega_setor() 
    {
        $("#setor").empty();
        $.getJSON("GetSetor", { unidade: $("#unidade").val() }, function (result) {
            data = $.parseJSON(result);
            for (var i = 0; i < data.length; i++)
            {
                var item = data[i];
                $("#setor").append("<option value=" + item.id + ">" + item.desc + "</option>");

            }
            carrega_impressora();
        });
   

    }



</script>




